{{tag>développement programmation compilation BROUILLON}}
====== Vala : Un langage de programmation pour GNOME ======

**Vala** est un nouveau langage de programmation (2006) qui propose des fonctionnalités modernes sans nécessiter l'installation d'un environnement d'exécution ou d'un interpréteur.

La syntaxe de Vala est proche de celle du C#. À la différence de ce dernier, Vala n'est pas exécuté dans un environnement d'exécution mais transformé en code C puis compilé en code machine par un compilateur C standard (comme [[GCC]] par exemple).

Vala est basé sur le modèle [[wp>GObject]]<sup>**(en)**</sup> et est donc particulièrement bien adapté, mais sans s'y limiter, à la programmation pour [[GNOME]], qui lui-même l'utilise.

===== Installation du compilateur (valac) =====

Il vous suffit d'[[:tutoriel:comment_installer_un_paquet|installer le paquet]] **[[apt://valac|valac]]**.

===== Utilisation du compilateur =====

Le compilateur Vala s'utilise comme la plupart des compilateurs directement en ligne de commande ou par le biais d'un [[wpfr>Environnement de développement intégré|EDI]].

La commande basique pour compiler un programme en Vala est la suivante :
  valac source.vala -o executable

Il est bien-sûr possible de fournir plusieurs fichiers sources Vala pour générer un exécutable. Pour lier une bibliothèque, on utilisera l'option ''%%--pkg%% <package>'', par exemple pour compiler un programme utilisant [[wpfr>GTK+]] :
  valac source.vala -o executable --pkg gtk+-2.0

Pour plus de détails, référez-vous à la [[page de manuel]] de **valac**.

===== Exemple de code =====

Voici un exemple de [[wpfr>Hello World]] en Vala :

<code c#>
using GLib;

class Sample : Object {
        void run () {
                stdout.printf ("Hello World\n");
        }

        static int main (string[] args) {
                var sample = new Sample ();
                sample.run ();
                return 0;
        }
}
</code>

===== Liens externes =====

  * [[http://live.gnome.org/Vala|Site officiel de Vala]] **(en)**
  * [[wpfr>Vala (langage de programmation)|Vala sur Wikipedia]] **(fr)**
  * [[http://www.wikivala.org|Wiki dédié à Vala]]

----

//Contributeurs : [[utilisateurs:Dradge|Dradge]], [[utilisateurs:Ban]], [[utilisateurs:Kriegy|Kriegy]] //